/* ===============================
   Calming Hypnotherapy Theme
   Palette: bleu doux, vert sauge, blanc cassé, gris clair
   =============================== */
:root{
  --bleu-doux:#A7C7E7;
  --vert-sauge:#BFD8C2;
  --blanc-casse:#FAF9F6;
  --gris-clair:#ECECEC;
  --encre:#1E2A2F;
  --encre-douce:#2f3d43;
  --ombre: 0 10px 30px rgba(0,0,0,.06);
  --rayon: 16px;
  --container: 1200px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--encre);
  background:var(--blanc-casse);
  line-height:1.6;
  padding-top: 3.75rem;
}

h1,h2,h3,h4,h5{
  font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
  color:var(--encre-douce);
  margin:0 0 .6em 0;
}

h1{font-size: clamp(2rem, 4vw + 1rem, 3.2rem); line-height:1.15}
h2.title-lg{font-size: clamp(1.6rem, 1.2rem + 2vw, 2.2rem); line-height:1.25}
h3{font-size:1.6rem}
h4{font-size:1.15rem; margin-top:1.2rem}
h5{font-size:1.05rem; margin:.2rem 0 .4rem;}

p{margin:.7rem 0 1rem; text-align: justify; /*max-width:70ch*/}

.container{
  width:min(100% - 2rem, var(--container));
  margin-inline:auto;
}

.container.narrow{
  width:min(100% - 2rem, 800px);
}

.center{text-align:center}

.btn{
  display:inline-block;
  padding:.85rem 1.15rem;
  border-radius:999px;
  background:var(--vert-sauge);
  color:#0f2a1f;
  font-weight:600;
  text-decoration:none;
  box-shadow: var(--ombre);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2), /* main shadow */
              0 2px 4px rgba(0, 0, 0, 0.1); /* subtle extra depth */
  transition: transform .12s ease, filter .2s ease;
}
.btn:hover{ transform: translateY(-1px); filter: brightness(0.97); }
.btn:active{ transform: translateY(0); }

.btn-primary{
  background: var(--vert-sauge);
}
.btn-small{ padding:.55rem .9rem; }

/* Header */
.site-header{
  position:fixed; top:0; left:0 ; width:100% ; z-index:10;
  background: rgba(250,249,246,.8);
  backdrop-filter: blur(19px);
  border-bottom:1px solid var(--gris-clair);
}


.header-inner{ display:flex; align-items:center; justify-content:space-between; min-height:64px; }

.brand{ display:flex; align-items:center; gap:.6rem; font-weight:700; text-decoration:none; color:var(--encre-douce); }
.brand-mark{ display:inline-grid; place-items:center; width:28px; height:28px; border-radius:999px; background:linear-gradient(145deg, var(--bleu-doux), var(--vert-sauge)); box-shadow: var(--ombre); }
.brand-text span{ color:#527e6b; }

.main-nav ul{ list-style:none; display:flex; gap:1rem; margin:0; padding:0; align-items:center; }
.main-nav a{ text-decoration:none; color:var(--encre); padding:.4rem .6rem; border-radius:8px; }
.main-nav a:hover{ background:var(--gris-clair); }

.nav-toggle{ display:none; background:none; border:none; font-size:1.5rem; }

.mobile-nav{
  display:none; flex-direction:column; gap:.6rem; padding:1rem; border-bottom:1px solid var(--gris-clair);
  background:var(--blanc-casse);
}
.mobile-nav a{ padding:.6rem; text-decoration:none; color:var(--encre); border-radius:8px; }
.mobile-nav a:hover{ background:var(--gris-clair); }
.mobile-nav.open{ display:flex; }

/* Hero */
.hero{
  position:relative;
  isolation:isolate;
  padding: clamp(1.5rem, 10vw, 1.5rem) 0;
  text-align:center;
}

.hero-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: 
    /* gradient overlays */
    /*radial-gradient(1200px 500px at 50% -20%, rgba(183, 206, 220, .45), transparent 60%),*/
    linear-gradient(to bottom, rgba(199, 220, 230, .55), rgba(191, 216, 194, .45) 85%, rgba(250, 249, 246, 1) 85%),
    /* background image */
    url("test.png");
  background-size: cover;     /* scale to cover full area */
  background-repeat: no-repeat;
}
.hero-inner{ 
  display:grid; 
  /*gap:1.6rem;*/
  align-items:center; 
  justify-items:center; }


/* Sections */
.section{ padding: clamp(2.5rem, 6vw, 4rem) 0; }
.section-alt{ background: #ffffff; }
.section:nth-of-type(2){padding-top: 0 !important;}


.eyebrow{
  font-weight:600; text-transform:uppercase; letter-spacing:.08em;
  color:#6a7a82; margin-bottom:.4rem;
}

.two-col{
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  gap: clamp(1rem, 5vw, 3rem);
  align-items:center;
}

.soft-card{
  width:100%; aspect-ratio: 1 / 1; border-radius: 20px;
  background:
    radial-gradient(80% 80% at 50% 20%, rgba(191,216,194,.6), rgba(191,216,194,.15) 50%, transparent 70%),
    linear-gradient(180deg, rgba(183,206,220,.45), rgba(191,216,194,.35));
  box-shadow: var(--ombre);
  border:1px solid var(--gris-clair);
}

/* Grid spécialités */
.grid{
  list-style:none; margin:1.2rem 0 0; padding:0;
  display:grid; gap:1rem;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.specialties li{
  text-align:center; padding:1rem 1rem 1.1rem; border:1px solid var(--gris-clair); border-radius:14px; background:#fff; box-shadow: var(--ombre);
}

.specialty-img {
  width: 80px;      /* adjust size as needed */
  height: 80px;     /* keep uniform square */
  object-fit: cover;
  border-radius: 50%; /* circular images */
  margin-bottom: 10px;
}

.specialty2-img {
  width: 39px;      /* adjust size as needed */
  height: 39px;     /* keep uniform square */
  object-fit: cover;
  border-radius: 0%; /* circular images */
  margin-bottom: 5px;
}

/* Blockquote */
blockquote{
  margin:0; padding:1.2rem 1.4rem; border-left:4px solid var(--bleu-doux);
  background: #fff; border-radius: 8px; box-shadow: var(--ombre);
}
blockquote cite{ display:block; margin-top:.6rem; font-style:normal; color:#52646c; }

/* Contact */
.contact .col:first-child{ align-self:start; }
.contact-list{ list-style:none; padding:0; margin: .5rem 0 1rem; }
.contact-list li{ margin:.2rem 0; }
.contact-form{
  display:grid; gap:.8rem; padding:1rem; background:#fff; border:1px solid var(--gris-clair); border-radius:14px; box-shadow: var(--ombre);
}
.contact-form input, .contact-form textarea{
  width:100%; padding:.75rem .9rem; border-radius:10px; border:1px solid #d7dfe2; background: #fbfbfb;
  font: inherit;
}
.contact-form input:focus, .contact-form textarea:focus{
  outline:2px solid var(--bleu-doux); border-color: transparent;
}

/* Footer */
.site-footer{ border-top:1px solid var(--gris-clair); background:#fff; }
.footer-inner{ display:flex; flex-wrap:wrap; gap:.8rem 1.6rem; align-items:center; justify-content:space-between; padding:1rem 0; }
.site-footer a{ color:inherit; text-decoration:none; }
.site-footer a:hover{ text-decoration:underline; }

/* Responsive */
@media (max-width: 900px){
  .two-col{ grid-template-columns: 1fr; }
  .visual{ order:-1; }
  .main-nav{ display:none; }
  .nav-toggle{ display:block; }
}




:root{
  --vert-sauge:#BFD8C2;
  --blanc-casse:#FAF9F6;
  --encre:#1E2A2F;
}

body{margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color:var(--encre); background:var(--blanc-casse);}



